It is common to apply security algorithms, such as authentication, ciphering and integrity algorithms, in a communication system comprising one or several nodes.
In some cases, security algorithms with a low security level can be sufficient. This is the case, for instance, for a node located in a safe place, such as a firm whose access is tightly controlled. The implementation of such low security level algorithms is advantageous in particular because it avoids unnecessary and complex processing and limits power consumption in the node.
In some other cases however, security algorithms with a higher security level are necessary. This is the case, for instance, for a node often subjected to security attacks by hackers.
A problem is that the security algorithms must sometimes be implemented in a node without knowing how the node will be used. For example, the node may be built well before it is placed in a communication system.
Even when the destination of a given node is known in advance, there is no guarantee that the safety degree of this node will not evolve in the course of time. For example, if the node comprises a mobile device, it may move from a safe place to a non safe place.
Moreover, if the communication system comprises several interconnected nodes, the security level to be applied to a given node could be impacted by other nodes of the communication system. For instance, if said given node is not directly subjected to attacks but is connected to a poorly protected other node, it should preferably implement high security level algorithms.